#ifndef ESFERA_HPP
#define ESFERA_HPP
#include "vetor.hpp"
#include "raio.hpp"
#include "material.hpp"
#include "objeto.hpp"
#include <algorithm>
#include <cmath>

class Esfera : public Objeto {
public:
	Esfera(Material*,const Vetor&,const double);
	~Esfera(void);

	Vetor getCentro(void) const;
	double getRaio(void) const;
	virtual Vetor getNormal(const Vetor&) const;

	void setCentro(Vetor);
	void setRaio(double);

	virtual double intersecao(const Raio&,Vetor&);


private:
	Vetor centro;
	double raio;
};


#endif
